package org.jugile.demo.domain;


import java.lang.reflect.Method;
import org.jugile.util.*;
import org.jugile.daims.BoCollection;

import org.jugile.demo.common.*;


public class AuthorCollection extends BoCollection<Author> {

	public AuthorCollection() { super(Author.class); }

	
	// ----- set operations ------
	public AuthorCollection and(AuthorCollection oc) {
		return (AuthorCollection)and(new AuthorCollection(), oc);
	}
	public AuthorCollection or(AuthorCollection oc) {
		return (AuthorCollection)or(new AuthorCollection(), oc);
	}	
	public AuthorCollection xor(AuthorCollection oc) {
		return (AuthorCollection)xor(new AuthorCollection(), oc);
	}	
	public AuthorCollection not(AuthorCollection oc) {
		return (AuthorCollection)not(new AuthorCollection(), oc);
	}	

	public AuthorCollection keep(String mname) {
		return (AuthorCollection)keep(new AuthorCollection(), mname);
	}	
	public AuthorCollection not(String mname) {
		return (AuthorCollection)not(new AuthorCollection(), mname);
	}	


	// ---- attribute finders ----
	public AuthorCollection byName(String v) { q("==", "name", v); return this; }
	public AuthorCollection byName(String op, String v) { q(op, "name", v); return this; }
	public AuthorCollection byKey(String v) { q("==", "key", v); return this; }
	public AuthorCollection byKey(String op, String v) { q(op, "key", v); return this; }
 
 
	// --- n - 1 ----
 

	// ---- filtering finders ----
 
	
}